<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta name="csrf-token" content="{{ csrf_token() }}">
    <title>控制台</title>
    <link rel="stylesheet" href="/lay/layui/css/layui.css">
    <script src="/js/jquery.min.js"></script>
    <script type="text/javascript" src="/lay/layer/layer.js"></script>
    <script src="/lay/layui/layui.js"></script>
    <script type="text/javascript" src="/js/common.js"></script>

</head>
<body class="layui-layout-body">
<div class="create-db-content">
    <div class="layui-collapse" lay-accordion>
        <div class="layui-colla-item">
            <h2 class="layui-colla-title">InnoDB</h2>
            <div class="layui-colla-content">
                该存储引擎为MySQL表提供了ACID事务支持、系统崩溃修复能力和多版本并发控制（即MVCC Multi-Version Concurrency Control）的行级锁;
                该引擎支持自增长列（auto_increment）,自增长列的值不能为空，如果在使用的时候为空则自动从现有值开始增值，如果有但是比现在的还大，
                则直接保存这个值; 该引擎存储引擎支持外键（foreign key） ,外键所在的表称为子表而所依赖的表称为父表。该引擎在5.5后的MySQL数据库中
                为默认存储引擎。
            </div>
        </div>
        <div class="layui-colla-item">
            <h2 class="layui-colla-title">MyISAM</h2>
            <div class="layui-colla-content">
                该引擎基于ISAM数据库引擎，除了提供ISAM里所没有的索引和字段管理等大量功能，MyISAM还使用一种表格锁定的机制来优化多个并发的读写操作，
                但是需要经常运行OPTIMIZE TABLE命令，来恢复被更新机制所浪费的空间，否则碎片也会随之增加，最终影响数据访问性能。MyISAM还有一些有用的
                扩展，例如用来修复数据库文件的MyISAMChk工具和用来恢复浪费空间的 MyISAMPack工具。MyISAM强调了快速读取操作，主要用于高负载的select，
                这可能也是MySQL深受Web开发的主要原因：在Web开发中进行的大量数据操作都是读取操作，所以大多数虚拟主机提供商和Internet平台提供商
                （Internet Presence Provider，IPP）只允许使用MyISAM格式。
                MyISAM类型的表支持三种不同的存储结构：静态型、动态型、压缩型。
            </div>
        </div>
        <div class="layui-colla-item">
            <h2 class="layui-colla-title">CSV（Comma-Separated Values逗号分隔值）</h2>
            <div class="layui-colla-content">
                使用该引擎的MySQL数据库表会在MySQL安装目录data文件夹中的和该表所在数据库名相同的目录中生成一个.CSV文件（所以，它可以将CSV类型的文件
                当做表进行处理），这种文件是一种普通文本文件，每个数据行占用一个文本行。该种类型的存储引擎不支持索引，即使用该种类型的表没有主键列；
                另外也不允许表中的字段为null。
            </div>
        </div>
        <div class="layui-colla-item">
            <h2 class="layui-colla-title">HEAP（也称为MEMORY）</h2>
            <div class="layui-colla-content">
                该存储引擎通过在内存中创建临时表来存储数据。每个基于该存储引擎的表实际对应一个磁盘文件，该文件的文件名和表名是相同的，类型为.frm。
                该磁盘文件只存储表的结构，而其数据存储在内存中，所以使用该种引擎的表拥有极高的插入、更新和查询效率。这种存储引擎默认使用哈希（HASH）
                索引，其速度比使用B-+Tree型要快，但也可以使用B树型索引。由于这种存储引擎所存储的数据保存在内存中，所以其保存的数据具有不稳定性，比如
                如果mysqld进程发生异常、重启或计算机关机等等都会造成这些数据的消失，所以这种存储引擎中的表的生命周期很短，一般只使用一次。
            </div>
        </div>
        <div class="layui-colla-item">
            <h2 class="layui-colla-title">BLACKHOLE（黑洞引擎）</h2>
            <div class="layui-colla-content">
                该存储引擎支持事务，而且支持mvcc的行级锁，写入这种引擎表中的任何数据都会消失，主要用于做日志记录或同步归档的中继存储，这个存储引擎
                除非有特别目的，否则不适合使用。详见博客<a href="https://blog.csdn.net/gaohuanjie/article/details/50923388" target="_blank">《BlackHole 存储引擎》</a>
            </div>
        </div>
        <div class="layui-colla-item">
            <h2 class="layui-colla-title">ARCHIVE</h2>
            <div class="layui-colla-content">
                该存储引擎非常适合存储大量独立的、作为历史记录的数据。区别于InnoDB和MyISAM这两种引擎，ARCHIVE提供了压缩功能，拥有高效的插入速度，
                但是这种引擎不支持索引，所以查询性能较差一些。
            </div>
        </div>
        <div class="layui-colla-item">
            <h2 class="layui-colla-title">PERFORMANCE_SCHEMA</h2>
            <div class="layui-colla-content">
                该引擎主要用于收集数据库服务器性能参数。这种引擎提供以下功能：提供进程等待的详细信息，包括锁、互斥变量、文件信息；保存历史的事件汇
                总信息，为提供MySQL服务器性能做出详细的判断；对于新增和删除监控事件点都非常容易，并可以随意改变mysql服务器的监控周期，例如
                （CYCLE、MICROSECOND）。
            </div>
        </div>
        <div class="layui-colla-item">
            <h2 class="layui-colla-title">FEDERATED</h2>
            <div class="layui-colla-content">
                该存储引擎可以不同的Mysql服务器联合起来，逻辑上组成一个完整的数据库。这种存储引擎非常适合数据库分布式应用。
            </div>
        </div>
    </div>
</div>

<script type="text/javascript">
    layui.use('element', function(){
        var element = layui.element;

        //…
    });
</script>
</body>
</html>